import { CSSProperties, TransitionProps } from 'vue'
import { LayoutSideHiddenPosConst } from './consts'

export const LayoutSideHiddenPosConstType_Name = 'LayoutSideHiddenPosConstType'
export const LayoutSideHiddenPropsType_Name = 'LayoutSideHiddenPropsType'

export type LayoutSideHiddenPosConstType =
  (typeof LayoutSideHiddenPosConst)[keyof typeof LayoutSideHiddenPosConst]

export type LayoutSideHiddenPropsType = {
  // 侧边栏的宽度
  width?: string
  // 侧边栏的位置
  position?: LayoutSideHiddenPosConstType
  // 是否显示边框
  border?: boolean
  // vue Transition props
  transitionProps?: TransitionProps
  // 是否使用内置触发按钮
  trigger?: boolean
  // 侧边栏样式类名
  className?: string | string[]
  // 侧边栏样式
  style?: string | Partial<CSSProperties>
  value?: boolean
  'onUpdate:value'?: (value: boolean) => void
}
